<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.6"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Percepio Trace Recorder: include/trcTask.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr id="projectrow">
  <td id="projectalign">
   <div id="projectname">Percepio Trace Recorder<span id="projectnumber">&#160;v4.10.3</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.6 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('trcTask_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle"><div class="title">trcTask.h File Reference</div></div>
</div><!--header-->
<div class="contents">

<p>Public trace task APIs.  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;trcTypes.h&gt;</code><br />
</div>
<p><a href="trcTask_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga29f9e9e93c05081cdef7a555beaf2205"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga29f9e9e93c05081cdef7a555beaf2205">xTraceTaskRegister</a>(pvTask,  szName,  uxPriority,  pxTaskHandle)&#160;&#160;&#160;((((pvTask) != 0) &amp;&amp; (<a class="el" href="group__trace__object__apis.html#ga25d702dc46bb776c99c3ebd48f46c529">xTraceObjectRegister</a>(PSF_EVENT_TASK_CREATE, pvTask, szName, uxPriority, (TraceObjectHandle_t*)(pxTaskHandle)) == TRC_SUCCESS)) ? ((void)<a class="el" href="group__trace__stack__monitor__apis.html#ga5fbc5e2abbbac9d83018138db5505135">xTraceStackMonitorAdd</a>(pvTask), TRC_SUCCESS) : TRC_FAIL)</td></tr>
<tr class="memdesc:ga29f9e9e93c05081cdef7a555beaf2205"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register trace task in the trace.  <br /></td></tr>
<tr class="separator:ga29f9e9e93c05081cdef7a555beaf2205"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga182deca6445d8703089a28dfe6206950"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga182deca6445d8703089a28dfe6206950">xTraceTaskUnregister</a>(xTaskHandle,  uxPriority)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2((void)<a class="el" href="group__trace__stack__monitor__apis.html#ga72bd0dc250d99062f6fae2e3e4f1868e">xTraceStackMonitorRemove</a>(xTraceEntryGetAddressReturn((TraceEntryHandle_t)(xTaskHandle))), <a class="el" href="group__trace__object__apis.html#ga20b1def504b1c9b237c711b3aaa49e29">xTraceObjectUnregister</a>((TraceObjectHandle_t)(xTaskHandle), PSF_EVENT_TASK_DELETE, uxPriority))</td></tr>
<tr class="memdesc:ga182deca6445d8703089a28dfe6206950"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unregister trace task from trace.  <br /></td></tr>
<tr class="separator:ga182deca6445d8703089a28dfe6206950"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga84c72328cb3f2ae3e940123365a8a665"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga84c72328cb3f2ae3e940123365a8a665">xTraceTaskSetName</a>&#160;&#160;&#160;<a class="el" href="group__trace__object__apis.html#ga21b7803f059e9b3cf2d5528249ecb20d">xTraceObjectSetName</a></td></tr>
<tr class="memdesc:ga84c72328cb3f2ae3e940123365a8a665"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets trace task name.  <br /></td></tr>
<tr class="separator:ga84c72328cb3f2ae3e940123365a8a665"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8ea2a55eb73dbc50150f337fa1e88666"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga8ea2a55eb73dbc50150f337fa1e88666">xTraceTaskRegisterWithoutHandle</a>(pvTask,  szName,  uxPriority)&#160;&#160;&#160;((((pvTask) != 0) &amp;&amp; (<a class="el" href="group__trace__object__apis.html#gacd88161ed7cc325b7a343d9ec8fad34e">xTraceObjectRegisterWithoutHandle</a>(PSF_EVENT_TASK_CREATE, pvTask, szName, uxPriority) == TRC_SUCCESS)) ? ((void)<a class="el" href="group__trace__stack__monitor__apis.html#ga5fbc5e2abbbac9d83018138db5505135">xTraceStackMonitorAdd</a>(pvTask), TRC_SUCCESS) : TRC_FAIL)</td></tr>
<tr class="memdesc:ga8ea2a55eb73dbc50150f337fa1e88666"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers trace task without trace task handle.  <br /></td></tr>
<tr class="separator:ga8ea2a55eb73dbc50150f337fa1e88666"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga41fcd9011bf48e5892a0b19928899bc0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga41fcd9011bf48e5892a0b19928899bc0">xTraceTaskUnregisterWithoutHandle</a>(pvTask,  uxPriority)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2((void)<a class="el" href="group__trace__stack__monitor__apis.html#ga72bd0dc250d99062f6fae2e3e4f1868e">xTraceStackMonitorRemove</a>(pvTask), <a class="el" href="group__trace__object__apis.html#ga304a75a1c8a64e02b0f8fe2355305555">xTraceObjectUnregisterWithoutHandle</a>(PSF_EVENT_TASK_DELETE, pvTask, uxPriority))</td></tr>
<tr class="memdesc:ga41fcd9011bf48e5892a0b19928899bc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unregisters trace task without trace task handle.  <br /></td></tr>
<tr class="separator:ga41fcd9011bf48e5892a0b19928899bc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5a7babc5816a7584864f6f12cf225190"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga5a7babc5816a7584864f6f12cf225190">xTraceTaskSetNameWithoutHandle</a>&#160;&#160;&#160;<a class="el" href="group__trace__object__apis.html#ga085aa8d483021ba357d47cd9b213ba42">xTraceObjectSetNameWithoutHandle</a></td></tr>
<tr class="memdesc:ga5a7babc5816a7584864f6f12cf225190"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets trace task name without trace task handle.  <br /></td></tr>
<tr class="separator:ga5a7babc5816a7584864f6f12cf225190"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaceae9df07a3de7b2dbc44ad8cf103699"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#gaceae9df07a3de7b2dbc44ad8cf103699">xTraceTaskSetCurrent</a>(pvTask)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(pxTraceTaskData-&gt;coreTasks[TRC_CFG_GET_CURRENT_CORE()] = (pvTask), TRC_SUCCESS)</td></tr>
<tr class="memdesc:gaceae9df07a3de7b2dbc44ad8cf103699"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets current trace task on current core.  <br /></td></tr>
<tr class="separator:gaceae9df07a3de7b2dbc44ad8cf103699"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga610f41daf3d5b7f78d52de894dfbe964"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga610f41daf3d5b7f78d52de894dfbe964">xTraceTaskSetCurrentOnCore</a>(coreId,  pvTask)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(pxTraceTaskData-&gt;coreTasks[coreId] = (pvTask), TRC_SUCCESS)</td></tr>
<tr class="memdesc:ga610f41daf3d5b7f78d52de894dfbe964"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets current trace task on specific core.  <br /></td></tr>
<tr class="separator:ga610f41daf3d5b7f78d52de894dfbe964"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac08ea98341bfa43f0c33c81a182fef47"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#gac08ea98341bfa43f0c33c81a182fef47">xTraceTaskGetCurrent</a>(ppvTask)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(*(ppvTask) = pxTraceTaskData-&gt;coreTasks[TRC_CFG_GET_CURRENT_CORE()], TRC_SUCCESS)</td></tr>
<tr class="memdesc:gac08ea98341bfa43f0c33c81a182fef47"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets current trace task on current core.  <br /></td></tr>
<tr class="separator:gac08ea98341bfa43f0c33c81a182fef47"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7784373b2261728466d28d9adfc33f50"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga7784373b2261728466d28d9adfc33f50">xTraceTaskGetCurrentOnCore</a>(coreId,  ppvTask)&#160;&#160;&#160;TRC_COMMA_EXPR_TO_STATEMENT_EXPR_2(*(ppvTask) = pxTraceTaskData-&gt;coreTasks[coreId], TRC_SUCCESS)</td></tr>
<tr class="memdesc:ga7784373b2261728466d28d9adfc33f50"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets current trace task on specific core.  <br /></td></tr>
<tr class="separator:ga7784373b2261728466d28d9adfc33f50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa146ad087b3e41880f382a3035ca3478"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#gaa146ad087b3e41880f382a3035ca3478">xTraceTaskGetCurrentReturn</a>()&#160;&#160;&#160;(pxTraceTaskData-&gt;coreTasks[TRC_CFG_GET_CURRENT_CORE()])</td></tr>
<tr class="memdesc:gaa146ad087b3e41880f382a3035ca3478"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns current trace task.  <br /></td></tr>
<tr class="separator:gaa146ad087b3e41880f382a3035ca3478"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3db6f1905d1011b561e11b1ff642dd59"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga3db6f1905d1011b561e11b1ff642dd59">xTraceTaskInstanceFinishedNow</a>()&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga63f12da033faf0f4de4ef2755d73b308">xTraceEventCreate0</a>(PSF_EVENT_IFE_DIRECT)</td></tr>
<tr class="memdesc:ga3db6f1905d1011b561e11b1ff642dd59"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers trace task instance finished event.  <br /></td></tr>
<tr class="separator:ga3db6f1905d1011b561e11b1ff642dd59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4e1fbd5cc3c8db1f98748094f970b85e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga4e1fbd5cc3c8db1f98748094f970b85e">xTraceTaskInstanceFinishedNext</a>()&#160;&#160;&#160;<a class="el" href="group__trace__event__apis.html#ga63f12da033faf0f4de4ef2755d73b308">xTraceEventCreate0</a>(PSF_EVENT_IFE_NEXT)</td></tr>
<tr class="memdesc:ga4e1fbd5cc3c8db1f98748094f970b85e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Marks the current trace task instance as finished on the next kernel call.  <br /></td></tr>
<tr class="separator:ga4e1fbd5cc3c8db1f98748094f970b85e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga3ba2b866e34a2d0ba076feb11f5488bf"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga3ba2b866e34a2d0ba076feb11f5488bf">xTraceTaskSetPriority</a> (TraceTaskHandle_t xTaskHandle, TraceUnsignedBaseType_t uxPriority)</td></tr>
<tr class="memdesc:ga3ba2b866e34a2d0ba076feb11f5488bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets trace task priority.  <br /></td></tr>
<tr class="separator:ga3ba2b866e34a2d0ba076feb11f5488bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad18180891f26ad2e1d7d6d3fd85757fe"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#gad18180891f26ad2e1d7d6d3fd85757fe">xTraceTaskSetPriorityWithoutHandle</a> (void *pvTask, TraceUnsignedBaseType_t uxPriority)</td></tr>
<tr class="memdesc:gad18180891f26ad2e1d7d6d3fd85757fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets trace task priority without trace task handle.  <br /></td></tr>
<tr class="separator:gad18180891f26ad2e1d7d6d3fd85757fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9c9cd4b8927c3dd7af9fc7c834fef31b"><td class="memItemLeft" align="right" valign="top">traceResult&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__trace__task__apis.html#ga9c9cd4b8927c3dd7af9fc7c834fef31b">xTraceTaskSwitch</a> (void *pvTask, TraceUnsignedBaseType_t uxPriority)</td></tr>
<tr class="memdesc:ga9c9cd4b8927c3dd7af9fc7c834fef31b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers trace task switch event.  <br /></td></tr>
<tr class="separator:ga9c9cd4b8927c3dd7af9fc7c834fef31b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Public trace task APIs. </p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="trcTask_8h.html">trcTask.h</a></li>
    <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.6 </li>
  </ul>
</div>
</body>
</html>
